package com.youlu.campus.website.entity;

import com.youlu.campus.website.common.enums.PlatformType;
import lombok.Data;
import org.springframework.data.annotation.Id;
import org.springframework.data.mongodb.core.index.Indexed;
import org.springframework.data.mongodb.core.mapping.Document;

import java.time.LocalDateTime;

/**
 * 活动简介
 */
@Data
@Document(collection = "activity_description") // MongoDB 集合名，可自定义
public class ActivityDescription {
    /**
     * MongoDB 自动生成的主键
     */
    @Id
    private String id;
    /**
     * 活动标题
     */
    @Indexed(background = true)
    private String title;

    /**
     * 活动图片链接，可存储OSS等地址
     */
    private String imageUrl;
    /**
     * 活动描述信息
     */
    private String description;
    /**
     * 活动是否开启，true-开启，false-关闭
     */

    @Indexed(background = true)
    private Boolean enabled = true;

    /**
     * 平台类型：pc-电脑端，h5-手机端
     */
    @Indexed
    private PlatformType platform = PlatformType.pc;

    /**
     * 活动开始时间
     */
    private LocalDateTime startTime;
    /**
     * 活动结束时间
     */
    private LocalDateTime endTime;
    /**
     * 排序值，用于前端展示排序，数值越小越靠前
     */
    private Integer sort;
    /**
     * 活动跳转链接
     */
    private String jumpUrl;
    /**
     * 活动类型（类似数据字典，可灵活存储类型标识，如 "foodSafety"、"learningLeiFeng" 等）
     */
    @Indexed(background = true)
    private String type;

    /**
     * 创建时间
     */
    private LocalDateTime createTime;

    /**
     * 修改时间
     */
    private LocalDateTime updateTime;
}